Micron Document
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| SparkN0de-git | SparkN0de |
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Node / ReticulumProjects / MeshChatX.git / files / docs / en / nomad-network.md

Displaying Raw • View renderedDownload


docs/en/nomad-network.md dev (c9f60cc5) Text, 3.56 KB

Tc9d1d9# Nomad Network and Mesh Server

Nomad Network is a distributed page and file system on top of Reticulum. MeshChatX includes a browser for remote nodes and a **Mesh Server** tool for hosting your own pages.

Tc9d1d9## Nomad browser

Open **Nomad Network** and enter a node destination hash. MeshChatX fetches the default entry page (usually Ta5d6ff`/page/index.mu`) over Reticulum link requests.

Supported page types:

| Extension | Format |
| --------- | ------------------------------------ |
| Ta5d6ff`.mu` | Micron markup (NomadNet default) |
| Ta5d6ff`.md` | Markdown with GFM-oriented rendering |
| Ta5d6ff`.txt` | Plain text with preserved whitespace |
| Ta5d6ff`.html` | Static HTML with sanitised CSS |

Follow links inside pages to browse further paths on the same node. Download files offered at Ta5d6ff`/file/*` paths.

Rendering uses Ta5d6ff`NomadPageRenderer.js` with DOMPurify sanitization. Micron can use a JavaScript parser or optional Go WASM when Ta5d6ff`nomad_micron_wasm_enabled` is set.

Tc9d1d9## Favourites and caching

Save frequent nodes as favourites. Link caching (Ta5d6ff`nomadnet_cached_links`) speeds up repeat visits on slow links.

Tc9d1d9## Archives

When **page archiver** is enabled, MeshChatX stores versioned snapshots of pages you visit. Open **Archives** to browse historical copies. An optional crawler can archive automatically.

Archived pages use the same renderer as the live browser based on the stored Ta5d6ff`page_path` extension.

Tc9d1d9## Mesh Server (page nodes)

**Tools → Mesh Server** lets you run a Ta5d6ff`nomadnetwork.node` destination locally.

Typical workflow:

Tff7b721. Create a page node in the UI.
Tff7b722. Upload Ta5d6ff`.mu`, Ta5d6ff`.md`, Ta5d6ff`.txt`, or Ta5d6ff`.html` pages and optional files.
Tff7b723. Start the node and announce it on the mesh.
Tff7b724. Share your destination hash so others can open Ta5d6ff`/page/index.mu` on your node.

Tc9d1d9### Executable (dynamic) pages

You can opt in per node to **executable pages**. When enabled:

Tff7b72- Non-executable pages are served as static files.
Tff7b72- Pages marked executable in the Mesh Server editor run as scripts. On Linux and macOS, Ta5d6ff`chmod +x` on the page file also marks it.
Tff7b72- The first line must be a shebang such as Ta5d6ff`#!/usr/bin/env python3`. Windows does not exec scripts by shebang, so Mesh Server resolves that interpreter on PATH (Ta5d6ff`python`, Ta5d6ff`py`, Ta5d6ff`node`, and similar).
Tff7b72- Request Ta5d6ff`field_*` and Ta5d6ff`var_*` values are passed as environment variables.
Tff7b72- Ta5d6ff`link_id` and Ta5d6ff`remote_identity` are supplied when available.
Tff7b72- Script stdout is returned as the page body. Failures return a controlled error page.

Editing a page in Mesh Server always shows the file source, never the script output.

API endpoints under Ta5d6ff`/api/v1/page-nodes/` manage CRUD operations, start and stop, and file listings.

Pages are served at Ta5d6ff`/page/<name>` and files at Ta5d6ff`/file/<name>` on the node destination.

Tc9d1d9## Browsing flow

Ta5d6ff```
User enters destination hash
|
v
RNS link request to /page/index.mu (or chosen path)
|
v
Remote page node responds with content
|
v
NomadPageRenderer picks Micron, Markdown, text, or HTML pipeline
|
v
Sanitised HTML shown in Nomad Network view
```

Tc9d1d9## Authoring pages

Read **NomadNet page formats** for security rules, Markdown quirks, and API behaviour. The Mesh Server rejects disallowed extensions on upload.

Tc9d1d9## Micron editor

**Tools → Micron editor** helps author Ta5d6ff`.mu` pages before you upload them to your node.

Tc9d1d9## See also

Tff7b72- **NomadNet page formats** for detailed authoring reference
Tff7b72- **Tools and utilities** for the full tools list
Tff7b72- **Reticulum interfaces** if remote pages time out (likely a path issue)


──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────